A disk drive unit records data on tracks formed on a disk and also reads the recorded data from the disk tracks. The read/write head with signal transducer is positioned over a desired position on the data recorded track so that data can be written to or read from the track. When an error occurs as data is written to or read from the track with the read/write head(s), an error recovery procedure (ERP) including a variety of error recovery routines is used to recover the error.
On the disk a read error occurs due to various causes, such as scratches on the disk, non-homogeneity in magnetic material, and a specular change in magnetic material. With respect to errors occurring in data, an error-detecting/correcting code (ECC) is usually used to execute error recovery processing. Furthermore, various recovery procedures, such as a change in a reading gain, a change in an off-track, and a change in the bias value of a magneto resistance (MR) element in the case where the MR element is used as a read head, are executed. If data is again read out after execution of an error recovery procedure such as this and the data reading operation is successful, the data will continue to be used. When an error can not be recovered by a plurality of error recovery procedures, the error is processed as a hard error. If it is possible to reassign data to another region on the disk, an error detected region on the disk will be processed as a unusable region, and reassignment of data to another region will be performed.
In many of recent disk drive units, MR heads have been employed. The MR head measures an output resistance which varies as a magnetic flux varies. By allowing a predetermined current to pass through an MR element, resistance change is converted to a dc voltage signal and data is read out.
However, in the method of reading the resistance change, a thermal asperity error may occur as one of the read errors. The thermal asperity error means that resistance change occurs due to a change in the temperature of an MR element caused when a read head impinges on asperities on a disk. The resistance change causes an abnormal signal to occur.
As a recovery method against thermal asperity errors, there is a method of shaving off the asperities on a disk, which cause the thermal asperity error, by varying the rotational speed of a disk spindle so that the fly height of a magnetic head is varied. This method is also constituted as one of the routines of the aforementioned error recovery procedure (ERP).
There are various methods to recover errors caused when data is read or written, but these are usually stored as a sequence of routines of the error recovery procedure. If the error recovery procedure is started, these routines will be executed in sequence.
It cannot be said that the primary factor of the occurrence of errors is permanently the same, and various primary factors can arise. Therefore, an error recovery procedure is required which is compatible with these various error factors. Generally the error recovery procedure changes and adjusts each one of the standard reading conditions determined between a disk, a magnetic disk, and a hard-disk controller (HDC) and then executes a read operation again. The reading conditions are, for example, (1) an off-track quantity which is an offset quantity between the center of the magnetic head and the center of the track, (2) a bias current value given to an MR element in the case where a magnetic head is equipped with the MR element, (3) adjustment of automatic gain control (AGC) for making the amplitude of a reconstruction signal constant, (4) speed adjustment of a phase-locked loop (PLL) circuit for stabilizing a sampling frequency (a follow-up speed is adjusted to a predetermined speed), etc.
A plurality of error recovery routines are usually registered as an error recovery procedure (ERP). These routines are executed in a predetermined order. A Retry (rereading) is preferred after each routine ends, and if the retry is successful, the error recovery procedure ends. If the retry is unsuccessful, the error recovery procedure will end at the time the retry has reached the maximum number of retries or at the time the last step of the error recovery procedure has ended. In this error recovery procedure including a plurality of different error recovery routines, the execution order is fixed. For example, adjustment of AGC is first performed. Then, adjustment of a PLL circuit is performed. Next, the bias value of an MR head is changed. This execution order is determined when a system is constructed, and it remains fixed. Therefore, if recovery routines which can actually recover an error exist near the end of the error recovery procedure including a plurality of routines, then wasteful recovery steps and reread operations will be repeatedly executed. This will result in a reduction in the efficiency of the error recovery procedure.